package xyz.weblade.beans.factory;

import xyz.weblade.beans.BeansException;

import java.util.Map;

/**
 * 扩展Bean工厂接口（该接口扩展类BeanFactory的一些接口，增加了额外的一些功能）
 */
public interface ListableBeanFactory extends BeanFactory{
    /**
     *按照Bean类型返回类的实例
     */
    <T> Map<String, T> getBeansOfType(Class<T> type) throws BeansException;

    /**
     *
     * 返回注册表中所有的Bean名称
     */
    String[] getBeanDefinitionNames();
}
